import Vue from 'vue'
import Vuex from 'vuex'
import stat from './state'
import mutations from './mutations'
Vue.use(Vuex)

//页面代码有点复杂，所以分离代码
// let defaultCity = '上海'
// try {
//     if( localStorage.city){
//         defaultCity = localStorage.city
//     }
// }catch (e) {

// }
// 上面代码移走

export default new Vuex.Store({
    state: stat,
    // {
    //     // 默认值为localStorage.city，没有就上海
    //     // 建议 使用localStorage时，外面包裹try cath 模块，不然可能会有异常
    //     city:defaultCity  //前面代码移走  //localStorage.city || '上海'
    // },
    // action
    // actions: {
    //     // action接收组件dispatch来的
    //     changeCity (ctx,city){
    //         // actions里头的commit方法
    //         ctx.commit('changCt',city)
    //     }
    // },
    // mutations
    mutations: mutations,
    // {
        // 下面代码移走
        // changCt (sta,city) {
        //     //sta参数表示state，将state中的city变成传入的city
        //     sta.city = city
        //     // 引入localStorage解决 刷新后，右上角的城市又恢复成state里的城市，而不是之前选择的城市
        //     try {
        //         localStorage.city = city
        //     }catch (e) {

        //     }
            
        // }
    // }
    getters:{
        // getters相当于组件中的计算属性
        doubleCity (st) {
            return st.city + " " + st.city
        }
    }
})